package affichage;


import java.io.File;
import javax.swing.filechooser.FileFilter;


/**
 * Classe qui est le filtre apposé sur les fichiers lors de la sauvegarde
 * ou du chargement d'un terrain dans l'éditeur ou d'une partie sauvegardée
 * @author Alexis BRASY, Geoffrey LEQUESNE, Sandrine PIRIOU, Michel POPOV
 */
public class ChoixFichier extends FileFilter {

	/** L'extension que le filtre doit appliquer sur le fichier */
    private String extension = ".par";
    /** La description du fichier ayant cette extension */
    private String description = "Fichier Partie";
	
    /**
     * Constructeur du filtre
     * @param ext l'extension que l'on souhaite appliquer
     * @param descrip la description correpondante
     */
    public ChoixFichier(String ext, String descrip) {
        this.extension = ext;
        this.description = descrip;
    }
	
    /**
     * Méthode qui retourne le booléen pour savoir si le fichier file est accepté
     * par le filtre ou non
     * @param file le fichier à tester
     * @return boolean le booléen
     */
    public boolean accept(File file) {
        return (file.isDirectory() || file.getName().endsWith(this.extension));
    }
	
    /**
     * Getter de la description du fichier
     * @return String la description
     */
    public String getDescription() {
        return this.extension + " - " + this.description;
    }	
}
